﻿
using agsXMPP;
using agsXMPP.protocol.client;
namespace sharpxbot.Core.Muc
{
    /// <summary>
    /// Stores bindings between group-chat public jids and private user ones
    /// </summary>
    public interface IPresenceCache
    {
        /// <summary>
        /// Processes presence packet and stores binding between group-chat public jid and private one
        /// </summary>
        /// <param name="presence">Presence packet to be processed</param>
        void ProcessPresence(Presence presence);

        /// <summary>
        /// Gets private user jid using public one
        /// </summary>
        /// <param name="userGroupChatJid">Public user jid</param>
        /// <returns>Private user jid</returns>
        Jid GetPrivateJid(Jid userPublicJid);
    }
}
